package com.mjh.zhujianju.service.party;

import com.livew.framework.base.service.BaseService;
import com.livew.framework.exception.XTBusinessException;
import com.livew.framework.page.PagedResult;
import com.mjh.zhujianju.model.party.BuildingClassDetailEO;
import com.mjh.zhujianju.vo.party.BuildingClassDetailVO;

import java.util.List;
import java.util.Map;

/**
 * @author liuyang
 * @Description: 可是详情
 * @date 2018/8/15 21:45
 */
public interface BuildingClassDetailService extends BaseService<BuildingClassDetailEO> {

    /**
     * 根据id统计
     * @param classIds
     * @return
     */
    List<BuildingClassDetailVO> queryBuildingClassDetailTotal(List<Long> classIds);

    /**
     * 根据课程id查询课程记录
     * @param classId
     * @return BuildingClassDetailVO
     */
    List<BuildingClassDetailVO> queryBuildingClassDetailByClassId(Long classId);

    /**
     * 根据课程id查询课程记录
     * @param classId
     * @return BuildingClassDetailEO
     */
    List<BuildingClassDetailEO> selectBuildingClassDetailByClassId(Long classId);

     Map<Long, Long> getMapTopOne(List<Long> ids);

    /**
     * 查看详情
     * @param id
     * @return
     */
    Long queryClassDetailFileId(Long id,Long userId) throws XTBusinessException;

    /**
     * 保存
     * @param buildingClassDetailVO
     * @throws XTBusinessException
     */
    void saveInfo(BuildingClassDetailVO buildingClassDetailVO) throws XTBusinessException;

    PagedResult<BuildingClassDetailVO> findBuildingClassDetailPagination(BuildingClassDetailVO buildingClassDetailVO);
    
    Integer queryBuildingClassDetailTotalByClassId(Long classId);
}
